Correct Microkernel Primitives
نویسندگان
چکیده
Primitives are basic means provided by a microkernel to implementors of operating system services. Intensively used within every OS and commonly implemented in a mixture of high-level and assembly programming languages, primitives are meaningful and challenging candidates for formal verification. We report on the accomplished correctness proof of academic microkernel primitives. We describe how a novel approach to verification of programs written in C with inline assembler is successfully applied to a piece of realistic system software. Necessary and sufficient criteria covering functional correctness and requirements for the integration into a formal model of memory virtualization are determined and formally proven. The presented results are important milestones on the way to a pervasively verified operating system.
منابع مشابه
The Enhancement of a User-level Thread Package Scheduling on Multiprocessors
Parallel applications on multiprocessors achieve better performance when they run on simpler microkernel scheduling mechanisms with appropriated user level scheduling policies. Our purpose is to offer to application programmers a set of new and simple primitives to get more control over the user-level thread scheduling. This paper presents a new library scheduling approach, based in the CThread...
متن کاملMINIX4RT: Real-Time Interprocess Communications Facilities
MINIX4RT is an extension of the well-known MINIX Operating System that adds Hard Real-Time services in a new microkernel but keeping backward compatibility with standard MINIX versions. Interprocess Communications provides a mechanism to make Operating System extensible, but they must be Priority Inversion free for Real-Time applications. As MINIX Interprocess Communications primitives does not...
متن کاملComparing Kernel-Space and User-Space Communication Protocols on Amoeba
Most distributed systems contain protocols for reliable communication, which are implemented either in the microkernel or in user space. In the latter case, the microkernel provides only low-level, unreliable primitives and the higher-level protocols are implemented as a library in user space. This approach is more flexible but potentially less
متن کاملTransCom: A Communication Microkernel for Transputers
The microkernel includes services to virtualise the communication network, which provides a parallel programming model based on message passing. It has been designed in two steps: a tiny system core called TransRouter providing simple functions for data transport and routing, but without protocol services, and a basic set of communication primitives, on top of the TransRouter and including its ...
متن کاملCan we rely on COTS microkernels for building fault-tolerant systems?
Abstract: This paper addresses the use of COTS microkernels in fault-tolerant, and, to some extent, safety-critical systems. The main issue is to assess the behavior of such components, upon which application software rely, in the presence of faults. Using fault injection, it is possible to classify the behavior of the functional primitives. From the results obtained, fault containment mechanis...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Electr. Notes Theor. Comput. Sci.
دوره 217 شماره
صفحات -
تاریخ انتشار 2008